home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2001 May / SGI Freeware 2001 May - Disc 1.iso / dist / patchSG0003743.idb / usr / include / liberrno.h.z / liberrno.h
C/C++ Source or Header  |  2001-04-12  |  37KB  |  738 lines

  1. /* USMID @(#) clibinc/liberrno.h    92.6    06/16/99 15:48:01 */
  2.  
  3. /*
  4. *
  5. * Copyright 1997, Silicon Graphics, Inc.
  6. * All Rights Reserved.
  7. *
  8. * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
  9. * the contents of this file may not be disclosed to third parties, copied or
  10. * duplicated in any form, in whole or in part, without the prior written
  11. * permission of Silicon Graphics, Inc.
  12. *
  13. * RESTRICTED RIGHTS LEGEND:
  14. * Use, duplication or disclosure by the Government is subject to restrictions
  15. * as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
  16. * and Computer Software clause at DFARS 252.227-7013, and/or in similar or
  17. * successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
  18. * rights reserved under the Copyright Laws of the United States.
  19. */
  20.  
  21. /*
  22.  *    (C) COPYRIGHT CRAY RESEARCH, INC.
  23.  *    UNPUBLISHED PROPRIETARY INFORMATION.
  24.  *    ALL RIGHTS RESERVED.
  25.  */
  26. #ifndef    _LIBERRNO_H
  27. #define    _LIBERRNO_H
  28.  
  29. #include <sys/errno.h>
  30.  
  31. /*
  32.  * Symbolic library run-time error codes
  33.  *
  34.  *
  35.  * These error codes start at a large number so as to not overlap with
  36.  * system error codes (<sys/errno.h>).  Therefore, there is no need to
  37.  * map system error codes into library run-time error codes.
  38.  *
  39.  * Because error numbers are compiled into existing binary programs, and
  40.  * because they are documented in several places, existing error numbers
  41.  * should not be substantially changed (fixing spelling errors and general
  42.  * re-wording is acceptable as long as the basic meaning is unchanged).
  43.  * Changing the number or type of substitutable parameters between releases
  44.  * is strictly forbidden.  Symbolic names for error message numbers are
  45.  * provided as a means to easily cross-reference errors and not as a means
  46.  * to change their numbers.
  47.  *
  48.  * Messages are grouped by origin and type, with gaps between groups for
  49.  * future expansion.  Thus, related message can be documented together
  50.  * (e.g., "The following messages apply to OPEN processing...").
  51.  *
  52.  * If a message must be substantially changed, leave the old message in
  53.  * and add a new message.  For example, suppose we have an existing message
  54.  * number 4444 with the symbolic name of FEIFNQ and the text of the message
  55.  * is:
  56.  *    "File name on OPEN must begin with the letter Q"
  57.  *
  58.  * Sometime later, this restriction is changed such that the file name must
  59.  * contain only the letters Q.  Since this substantially changes the meaning
  60.  * of the error message, we do the following:
  61.  *
  62.  *    1) Sever the association between the symbolic name FEIFNQ and 4444,
  63.  *       by changing the definition in this file:
  64.  *        #define FEIFNQ   4444    File name must begin with Q
  65.  *       becomes:
  66.  *        #define FE__4444 4444    DEAD MESSAGE (n.n) - DO NOT REUSE
  67.  *
  68.  *         where 'n.n' is the first release level (of UNICOS or CrayLibs) 
  69.  *       where the message was no longer issued.
  70.  *
  71.  *    2) Create a new symbolic name (we can reuse the symbol FEIFNQ if it
  72.  *       is convenient, but we don't have to) with some other number:
  73.  *        #define FEIFNQ  nnnn    File name must have only Qs
  74.  *
  75.  *    3) Change the old message in the message source file 
  76.  *       (libu/errmsg/lib.msg):
  77.  *        $msg FEIFNQ File name on OPEN must begin with the letter Q
  78.  *       becomes:
  79.  *        $msg FE__4444 File name on OPEN must begin with the letter Q
  80.  *
  81.  *    4) Add the 'new' message to the message source file:
  82.  *        $msg FEIFNQ File name on OPEN must contain only the letter Q
  83.  *
  84.  * The 'DEAD MESSAGE' note in this file and the hard-coded constant in the
  85.  * message source file signal the existence of dead messages.  Let them
  86.  * rest in peace (at least for a release or two).
  87.  *
  88.  * Existing binary programs will continue to get the messages that apply to
  89.  * them.
  90.  */
  91.  
  92. #ifndef    SYMSONLY
  93. /*
  94.  * Any function prototypes or other definitions which are not needed for
  95.  * inclusion when lib.msg is processed to generate the .cat file should
  96.  * be located here.  The SYMSONLY symbol is defined when cpp is invoked
  97.  * for lib.msg. 
  98.  */
  99.  
  100. #include <stdarg.h>
  101. #include <sys/cdefs.h>
  102.  
  103. __BEGIN_DECLS
  104. extern    void    _lerror        (int _Hndlcode, int _Errno, ...);
  105. extern    void    _lmessage    (int _Errno, char *_Severity, va_list args);
  106. extern    int    _fwarn        (int _Errno, ...);
  107. extern    int    _lwarn        (int _Errno, ...);
  108. __END_DECLS
  109.  
  110. #define    MAXMLN    800        /* Maximum length of a message in bytes    */
  111.  
  112. #if    defined(_CRAYT3D) && defined(_UNICOS_MAX)
  113. #define    FEMCN    "mpplib"    /* Library Error Message Catalog Name    */
  114. #else
  115. #define    FEMCN    "lib"        /* Library Error Message Catalog Name    */
  116. #endif
  117.  
  118. /*
  119.  * Error levels are defined for the benefit of function _lerror().  The
  120.  * error handling mode determines what kind of information should be printed
  121.  * when a program aborts with an error. 
  122.  */
  123.  
  124. #define _LELVL_ABORT    4    /* Message, abort and traceback        */
  125. #define _LELVL_EXIT    3    /* Message, exit with nonzero status    */
  126. #define _LELVL_MSG    2    /* Message, then return error status    */
  127. #define _LELVL_RETURN    0    /* No message, just return error status    */
  128.  
  129. #endif    /* !SYMSONLY */
  130.  
  131. /*
  132.  * Define the range for the Fortran run-time library error messages,
  133.  * based on sys/errno.h.
  134.  */
  135.  
  136. #if    defined(__mips) || defined(_LITTLE_ENDIAN)
  137. #ifndef    __FTNBASE    /* __FTNBASE defined at kudzu level */
  138. #define    BASE    4000
  139. #else
  140. #define    BASE    __FTNBASE
  141. #endif
  142. #elif    _UNICOS
  143. #define    BASE    EFLEFIRST
  144. #else
  145. #define    BASE    1000
  146. #endif
  147.  
  148. /*
  149.  * The range BASE to BASE+999 is reserved for Fortran I/O.
  150.  */
  151.  
  152. #define FERDPEOF -(BASE+1)    /* Tried to read past end of file    */
  153. #define FERDEMPT -(BASE+2)    /* Tried to read an empty file        */
  154. #define FERDENDR -(BASE+3)    /* Tried to read past endfile record    */
  155. #define FERDNLEF -(BASE+4)    /* Tried to read past EOF on namelist    */
  156. #define FERDIEOF -(BASE+5)    /* Tried to read past internal file EOF */
  157.  
  158. #define FEEORCND -(BASE+6)    /* Read past EOR with ADVANCE='NO'    */
  159.  
  160. #define FE____10 (BASE+10)    /* DEAD MESSAGE (7.3) -- DO NOT RE-USE    */
  161. #define FE____11 (BASE+11)    /* DEAD MESSAGE (7.3) -- DO NOT RE-USE    */
  162.  
  163. #define FEIVUNIT (BASE+12)    /* Invalid unit number            */
  164. #define FEIVUNTO (BASE+13)    /* Invalid unit number on OPEN        */
  165. #define FENOTOPN (BASE+14)    /* Unit is not connected         */
  166. #define FEIVRECN (BASE+15)    /* Invalid record number (%d)        */
  167. #define FENORECN (BASE+16)    /* Record number does not exist in file    */
  168.  
  169. #define FECONNDA (BASE+21)    /* Unit not opened for direct access    */
  170. #define FECONNTP (BASE+22)    /* Unit not connected to tape        */
  171. #define FE____23 (BASE+23)    /* DEAD MESSAGE (7.3) -- DO NOT RE-USE    */
  172. #define FE____24 (BASE+24)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  173. #define FEOPOTHR (BASE+25)    /* File is opened with another structure*/
  174. #define FEOPAUXT (BASE+26)    /* File is opened by an auxiliary i/o    */
  175. #define FEFILACT (BASE+27)    /* ACTION= conflicts with file perms    */
  176. #define FENOSKPB (BASE+28)    /* File does not support SKIPBAD    */
  177. #define FESTIOER (BASE+29)    /* Error on underlying stdio request    */
  178.  
  179. #define FEOPSTAT (BASE+30)    /* Unknown STATUS parameter on OPEN    */
  180. #define FEOPACCS (BASE+31)    /* Unknown ACCESS parameter on OPEN    */
  181. #define FEOPFORM (BASE+32)    /* Unknown FORM parameter on OPEN    */
  182. #define FEOPRECL (BASE+33)    /* Unknown RECL parameter on OPEN    */
  183. #define FEOPBLNK (BASE+34)    /* Unknown BLANK parameter on OPEN    */
  184. #define FEOPPOSN (BASE+35)    /* Unknown POSITION parameter on OPEN    */
  185.  
  186. #define FEOPACTB (BASE+38)    /* Unknown ACTION specifier on OPEN    */
  187. #define FEOPDLMB (BASE+39)    /* Unknown DELIM specifier on OPEN    */
  188.  
  189. #define FEOPFNRQ (BASE+40)    /* FILE specifier required on OPEN    */
  190. #define FEOPFNIV (BASE+41)    /* FILE specifier invalid on OPEN    */
  191. #define FEOPRCRQ (BASE+42)    /* RECL specifier required on OPEN    */
  192.  
  193. #define FEOPBKIV (BASE+44)    /* BLANK specifier invalid on OPEN    */
  194. #define FEOPPSIV (BASE+45)    /* POSITION specifier invalid on OPEN    */
  195. #define FEOPASGN (BASE+46)    /* ASSIGN/ASGCMD conflict        */
  196. #define FE____47 (BASE+47)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  197. #define FEOPPADB (BASE+48)    /* Unknown PAD specifier on OPEN    */
  198. #define FEOPDLMI (BASE+49)    /* DELIM specifier invalid on OPEN    */
  199.  
  200. #define FE____50 (BASE+50)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  201. #define FEOPFNNX (BASE+51)    /* File must not exist prior to OPEN    */
  202. #define FEOPFNCN (BASE+52)    /* File is connected to another unit    */
  203.  
  204. #define FEOPCBNK (BASE+54)    /* Only BLANK can be changed on reopen    */
  205. #define FEOPNOFS (BASE+55)    /* File cannot be opened (structure)    */
  206. #define FEOPNNDA (BASE+56)    /* File cannot be opened for direct acc.*/
  207. #define FEOPCAPY (BASE+57)    /* File cannot be opened per dgl's specs*/
  208. #define FEOPNNEW (BASE+58)    /* STATUS=NEW on currently-open-file    */
  209. #define FEOPIVRL (BASE+59)    /* Incorrect RECL for existing d.a. file*/
  210.  
  211. #define FEOPSTFN (BASE+60)    /* Attempt to OPEN standard file wrong    */
  212. #define FEOPAQPZ (BASE+61)    /* Invalid AQPSIZE parameter in AQOPEN     */
  213. #define FE____62 (BASE+62)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  214. #define FEWTOMNY (BASE+63)    /* Too many open word addressable files */
  215. #define FEWABLKS (BASE+64)    /* Too many blocks requested in WINIT    */
  216. #define FERQTRNC (BASE+65)    /* file requires truncation after write */
  217. #define FE____66 (BASE+66)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  218. #define FEOPPDIV (BASE+67)    /* PAD specifier invalid on OPEN    */
  219. #define FEOPNUNF (BASE+68)    /* File cannot be opened for unfmtd acc */
  220. #define FEOPNFMT (BASE+69)    /* File cannot be opened for fmtd acc    */
  221.  
  222. #define FECLSTAT (BASE+70)    /* Unknown STATUS parameter on CLOSE    */
  223. #define FECLSTIV (BASE+71)    /* Invalid STATUS parameter on CLOSE    */
  224. #define FEINCZER (BASE+72)    /* Increment in implied-do is zero    */
  225. #define FEAQBADH (BASE+73)    /* AQIO call with invalid file handle    */
  226. #define FEMDUPOP (BASE+74)    /* File connected to unit with "-m off" */
  227. #define FEANOSUP (BASE+75)    /* assign opt unsupported by file type    */
  228. #define FEMIXSCP (BASE+76)    /* can't open unit private and global   */
  229. #define FENOGLOB (BASE+77)    /* -P global not supported         */
  230. #define FENOPRIV (BASE+78)    /* -P private not supported         */
  231. #define FEBSPNRD (BASE+79)    /* BACKSPACE requires read permission    */
  232. #define FEFMTTIV (BASE+80)    /* Formatted I/O invalid on unformatted    */
  233. #define FEUNFMIV (BASE+81)    /* Unformatted I/O invalid on formatted    */
  234. #define FEDIRTIV (BASE+82)    /* Direct access I/O invalid on seq.    */
  235. #define FESEQTIV (BASE+83)    /* Sequential I/O invalid on direct acc.*/
  236. #define FEBKSPIV (BASE+84)    /* BACKSPACE invalid on direct access    */
  237. #define FEENDFIV (BASE+85)    /* ENDFILE invalid on direct access    */
  238. #define FERWNDIV (BASE+86)    /* REWIND invalid on direct access    */
  239. #define FERDAFWR (BASE+87)    /* Read after write invalid on seq.    */
  240. #define FE____88 (BASE+88)    /* DEAD MESSAGE (7.3) -- DO NOT RE-USE    */
  241.  
  242. #define FENOREAD (BASE+90)    /* No read permission            */
  243. #define FENOWRIT (BASE+91)    /* No write permission            */
  244. #define FENOBKSP (BASE+92)    /* File does not support BACKSPACE    */
  245. #define FENOENDF (BASE+93)    /* File does not support ENDFILE    */
  246. #define FE____94 (BASE+94)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  247. #define FEWRAFEN (BASE+95)    /* WRITE or PRINT invalid after ENDFILE    */
  248. #define FEENAFEN (BASE+96)    /* ENDFILE invalid after ENDFILE    */
  249. #define FE____97 (BASE+97)    /* DEAD MESSAGE (7.3) -- DO NOT RE-USE    */
  250. #define FENOBKPI (BASE+98)    /* Unable to BACKSPACE pipe        */
  251. #define FENORWPI (BASE+99)    /* Unable to REWIND pipe        */
  252.  
  253. #define FE___100 (BASE+100)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  254. #define FENODELT (BASE+101)    /* Unable to delete file on CLOSE    */
  255.  
  256. #define FENOTHRD (BASE+103)    /* -P thread not supported         */
  257. #define FENOTEAM (BASE+104)    /* -P team not supported         */
  258.  
  259. #define FEFMTILF (BASE+117)    /* Infinite loop in format        */
  260. #define FEFMTLII (BASE+118)    /* Literal invalid in input format    */
  261. #define FEFMTQIO (BASE+119)    /* Q edit-desc. invalid in output format*/
  262.  
  263. #define FENOSKPF (BASE+140)    /* File does not support SKIPF         */
  264.  
  265. #define FERDTYPE (BASE+170)    /* Data type mismatch on READ        */
  266. #define FEWRTYPE (BASE+171)    /* Data type mismatch on WRITE        */
  267.  
  268. #define FERDIVLG (BASE+173)    /* Invalid logical input field        */
  269.  
  270. #define FELDUNKI (BASE+180)    /* Unknown input on list-directed read    */
  271. #define FELDNOCX (BASE+181)    /* Invalid complex on list-directed read*/
  272. #define FELDSTRL (BASE+182)    /* String too long on list-directed read*/
  273.  
  274. #define FENICVIC (BASE+190)    /* Invalid character in numeric input    */
  275. #define FENICVOF (BASE+191)    /* Overflow converting numeric input    */
  276. #define FENICVEU (BASE+192)    /* Exponent underflow on numeric input    */
  277. #define FENICVEO (BASE+193)    /* Exponent overflow on numeric input    */
  278. #define FENICVBK (BASE+194)    /* Blank numeric input field        */
  279.  
  280. #define FERDPEOR (BASE+201)    /* Tried to read past end of record    */
  281. #define FERDWRER (BASE+202)    /* Read/wrote too little data         */
  282. #define FERDMEMY (BASE+203)    /* Unable to get memory for fmt'd read    */
  283.  
  284. #define FENOMEMY (BASE+205)    /* Unable to request more memory space    */
  285. #define FENOSDSP (BASE+206)    /* Unable to request more SDS space    */
  286.  
  287. #define FEIOACTV (BASE+208)    /* An I/O statement was already active    */
  288. #define FESDSFSS (BASE+209)    /* SDS file size must be specified    */
  289.  
  290. #define FEWRLONG (BASE+211)    /* Tried to write a too long record    */
  291. #define FEWRIEND (BASE+212)    /* Tried to write beyond internal file    */
  292. #define FEPTRNAS (BASE+213)    /* Ptr/alloc array not assoc/alloc'ed    */
  293. #define FEFMTPAL (BASE+214)    /* FMT var not allocated or associated    */
  294. #define FEUNOTAL (BASE+215)    /* UNIT var not allocated or associated    */
  295. #define FEFMTNUL (BASE+216)    /* FMT var or array is zero-sized    */
  296. #define FERDMALR (BASE+217)    /* Read encountered a malformed record    */
  297.  
  298. #define FEINTUNK (BASE+220)    /* Internal Fortran library error    */
  299. #define FEINTFST (BASE+221)    /* Internal error - unknown file struct.*/
  300.  
  301. #define FEINTDTY (BASE+223)    /* Internal error - unknown data type    */
  302. #define FEINTIPF (BASE+224)    /* Internal error invalid parsed format */
  303.  
  304. #define FEINTTAP (BASE+226)    /* Internal error on tape read        */
  305.  
  306. /*
  307.  * The range BASE+275 to BASE+329 is reserved for namelist I/O.
  308.  */
  309.  
  310. #define FENLSTRN (BASE+295)    /* Null substring, nl read        */
  311. #define FENLSTRG (BASE+296)    /* Bad substring contents, nl read    */
  312. #define FENLSUBN (BASE+297)    /* Null subscript, nl read        */
  313. #define FENLSUBD (BASE+298)    /* Bad char after subscript, nl read    */
  314. #define FENLSUBS (BASE+299)    /* Bad char in subscript value, nl read    */
  315.  
  316. #define FENLLGNM (BASE+303)    /* NL variable name too long + name    */
  317. #define FENLIVGP (BASE+304)    /* NL input group name mismatch + name    */
  318. #define FENLIVIT (BASE+305)    /* Input float data to INTEGER type    */
  319. #define FENLONEC (BASE+306)    /* First/last character unknown nl read */
  320. #define FENLUNKI (BASE+307)    /* Unknown input on namelist read     */
  321. #define FENLZRCH (BASE+308)    /* Zero length char in nl for cf90/cf77 */
  322. #define FENLARSC (BASE+309)    /* Array section input to cf90/cf77 nml */
  323. #define FENLIOER (BASE+310)    /* Namelist read error            */
  324.  
  325. #define FENLTYPE (BASE+312)    /* Invalid char passed to namelist rtn.    */
  326. #define FENLLONG (BASE+313)    /* Namelist variable name too long    */
  327. #define FENLIVGN (BASE+314)    /* Namelist input group name mismatch    */
  328. #define FENLUNKN (BASE+315)    /* Unrecognized namelist variable name    */
  329. #define FENLNOVL (BASE+316)    /* Unable to obtain namelist value    */
  330. #define FENLIVLG (BASE+317)    /* Invalid logical data in namelist read*/
  331. #define FENLIVCX (BASE+318)    /* Invalid complex data in namelist read*/
  332.  
  333. #define FENLRECL (BASE+320)    /* Input rec. too long on namelist read    */
  334. #define FENLBNDY (BASE+321)    /* Attempted namelist read beyond array    */
  335.  
  336. #define FENLTOOM (BASE+323)    /* Too many namelist elements specified */
  337. #define FENLNREC (BASE+324)    /* Unrecognized namelist variable name    */
  338. #define FENLTYPI (BASE+325)    /* Data type mismatch on namelist read    */
  339. #define FENLNMSZ (BASE+326)    /* Namelist name is larger than recsize */
  340. #define FENLDBCP (BASE+327)    /* Double complex illegal for f77 mode    */
  341. #define FENLSTCT (BASE+328)    /* Structures illegal for f77 mode    */
  342. #define FENLPRAM (BASE+329)    /* Bad pre-ampersand character in f90    */
  343.  
  344. #define FEBIONDA (BASE+330)    /* Direct access file invalid for BUFIO    */
  345. #define FEBIONFM (BASE+331)    /* Formatted file invalid for BUFIO    */
  346. #define FEBIOFWA (BASE+332)    /* Start address > end address for BUFIO*/
  347.  
  348. #define FEBIOISP (BASE+334)    /* Invalid argument to SETPOS        */
  349. #define FEBIOSNT (BASE+335)    /* Positioning operation not supported    */
  350.  
  351. #define FEMIXBUF (BASE+338)    /* Mixing BUFIO/READ/WRITE on pure file    */
  352. #define FEMIXAUX (BASE+339)    /* Mixing auxiliary and Fortran I/O    */
  353.  
  354. #define FEDECDRL (BASE+340)    /* Invalid DECODE record length        */
  355. #define FEENCDRL (BASE+341)    /* Invalid ENCODE record length        */
  356. #define FEBIOFWD (BASE+342)    /* Invalid number of items for BUFIO    */
  357.  
  358. #define FEADVSPC (BASE+343)    /* Invalid ADVANCE= specifier on rd/wrt    */
  359. #define FEADVSIZ (BASE+344)    /* ADVANCE='NO' required with SIZE=    */
  360. #define FEADVEOR (BASE+345)    /* ADVANCE='NO' required with EOR=    */
  361.  
  362. #define FETAPNBN (BASE+350)    /* Negative tape block number is invalid*/
  363. #define FETAPNBS (BASE+351)    /* Invalid NBS parameter        */
  364. #define FETAPNVS (BASE+352)    /* Invalid NVS parameter        */
  365.  
  366. #define FETAPBSX (BASE+354)    /* Maximum tape block size exceeded    */
  367. #define FETAPCMB (BASE+355)    /* Invalid combination of parameters    */
  368. #define FETAPUTE (BASE+356)    /* Unrecovered tape error on tape read    */
  369. #define FETASKPF (BASE+357)    /* Cannot SKIPF forward            */
  370. #define FETAPNVY (BASE+358)    /* Invalid NVS or NV parameter         */
  371.  
  372. #define FETBARGS (BASE+360)     /* Tblmgr routine called with bad args. */
  373. #define FETBNTAB (BASE+361)     /* Tblmgr routine called with bad NTAB    */
  374. #define FETBTNUM (BASE+362)     /* Tblmgr routine called with bad tab. #*/
  375. #define FETBINCR (BASE+363)     /* Tblmgr routine called with bad incr. */
  376.  
  377. #define FEUBCINV (BASE+370)    /* Read or write of nonbyte-data is inv.*/
  378. #define FELDDCNV (BASE+371)    /* Data conversion routine not loaded    */
  379. #define FENCNV90 (BASE+372)    /* Can't convert this type with f90    */
  380. #define FEKNTSUP (BASE+373)    /* I/O not supported for this KIND     */
  381. #define FESHRSUP (BASE+374)    /* Shared variables inv. with this I/O    */
  382. #define FENOICNV (BASE+375)    /* Data conversion not sup on this unit */
  383.  
  384. #define FEARGLST (BASE+380)    /* Argument list is not valid        */
  385.  
  386. #define FEKLUDG1 (BASE+391)    /* System error 1            */
  387. #define FEKLUDG2 (BASE+392)    /* System error 2            */
  388. #define FEKLUDG3 (BASE+393)    /* System error 3            */
  389. #define FEKLUDG4 (BASE+394)    /* System error 4            */
  390.  
  391. #define FEARGCNT (BASE+402)    /* Routine called with wrong # of args.    */
  392. #define FEARGSHP (BASE+403)    /* Actual/dummy argument shape conflict */
  393.  
  394. /*
  395.  * The range BASE+405 to BASE+499 is reserved for Fortran-90 intrinsics and 
  396.  * Fortran-90 statement support.
  397.  */
  398.  
  399. #define FESCIDIM (BASE+405)    /* Array intrin. has illegal DIM arg.     */
  400. #define FESCIRNK (BASE+406)    /* Illegal rank for array intrin. arg.     */
  401. #define FESCICNF (BASE+407)    /* Matrix operands are not conformable. */
  402. #define FERSHNPD (BASE+408)    /* RESHAPE srcsize.lt.moldsize, no PAD    */
  403. #define FERSHNEG (BASE+409)    /* RESHAPE arg SHAPE has negative value */
  404. #define FEPTRARR (BASE+410)    /* Source arg not associated | allocated*/
  405. #define FEALALLO (BASE+411)    /* ALLOCATE array already allocated    */
  406. #define FENODEAL (BASE+412)    /* DEALLOCATE arg not alloc or ptr-alloc*/
  407. #define FEDEALSZ (BASE+413)    /* DEALLOCATE arg not allocated size    */
  408. #define FERPTNEG (BASE+414)    /* negative ncopies argument to REPEAT    */
  409. #define FENEARZS (BASE+415)    /* NEAREST argument S is 0.0        */
  410. #define FEIPOWZR (BASE+416)    /* Two zero arguments to POWER routine    */
  411. #define FEBDORDR (BASE+417)    /* Bad value in ORDER for RESHAPE    */
  412. #define FEBADMLD (BASE+418)    /* Result of TRANSFER <= size of source    */
  413. #define FESHPSZZ (BASE+419)    /* Shape array to RESHAPE is 0-sized    */
  414. #define FEVECUNP (BASE+420)    /* Too few elts in UNPACK vector array    */
  415. #define FENGFLCL (BASE+421)    /* GETFIRST array not allocated locally */
  416. #define FEDEASIZ (BASE+422)    /* DEALLOC argsize mismatch,give sizes    */
  417. #define FENMPTAR (BASE+423)    /* Source arg not associated:allocated    */
  418. #define FENMSCDM (BASE+424)    /* nm Array intrin. has illegal DIM arg    */
  419.  
  420. /*
  421.  * The range BASE+500 to BASE+599 is reserved for assign processing.
  422.  *    500-579    Assign errors
  423.  *    580-599    Assign warnings
  424.  */
  425.  
  426. #define ERAS_UNFILE (BASE+500)    /* Can't read global environment file    */
  427. #define ERAS_WRERR (BASE+501)    /* Can't write global environment file    */
  428.  
  429. #define ERAS_ATTFMT (BASE+503)    /* Bad format of assign attributes in    */
  430.                 /* assign environment file        */
  431. #define FE___504 (BASE+504)    /* DEAD MESSAGE (3.0) -- DO NO RE-USE    */
  432. #define FE___505 (BASE+505)    /* DEAD MESSAGE (3.0) -- DO NO RE-USE    */
  433. #define FE___506 (BASE+506)    /* DEAD MESSAGE (3.0) -- DO NO RE-USE    */
  434. #define ERAS_FSNSUP (BASE+507)    /* File structure not supported        */
  435. #define ERAS_MIXFS (BASE+508)    /* Invalid mixing of -F and -s options    */
  436. #define ERAS_MIXFO (BASE+509)    /* Invalid mix of -F with -b, -p, etc.    */
  437. #define FE___510 (BASE+510)    /* DEAD MESSAGE (1.2) -- DO NOT RE-USE    */
  438. #define ERAS_ASNCTL (BASE+511)    /* Invalid arguments passed to ASNCTL    */
  439. #define FE___512 (BASE+512)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  440. #define ERAS_BADTYPE (BASE+513)    /* Unrecognized assign object        */
  441. #define ERAS_BADUNIT (BASE+514)    /* Unrecognized assign unit object    */
  442. #define ERAS_INCOV (BASE+515)    /* -I and -O cannot both be provided    */
  443. #define ERAS_REMV (BASE+516)    /* -V and -R cannot both be provided    */
  444. #define ERAS_REMAT (BASE+517)    /* -R cannot be provided with attrs    */
  445. #define ERAS_VIEWAT (BASE+518)    /* -V cannot be provided with attrs    */
  446. #define FE___519 (BASE+519)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  447. #define ERAS_NOOBJS (BASE+520)    /* No assign objects specified        */
  448. #define FE___521 (BASE+521)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  449. #define FE___522 (BASE+522)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  450. #define ERAS_DIRFMT (BASE+523)    /* Assign directive has bad format    */
  451.                 /* in assign file or CALL ASSIGN    */
  452. #define ERAS_FNBL (BASE+524)    /* ASNFILE 1st arg has imbedded blnks    */
  453. #define ERAS_ATTRP (BASE+525)    /* Invalid -p option value on assign     */
  454. #define ERAS_COREQN (BASE+526)    /* -c requires -n to be specified    */
  455. #define ERAS_FILENV (BASE+527)    /* FILENV must be set when TMPDIR isn't    */
  456. #define ERAS_NOPOP (BASE+528)    /* ASNCTL('POP') called w/ empty stack    */
  457. #define ERAS_MIXAD (BASE+529)    /* Invalid mixing of -a with -D options    */
  458. #define ERAS_ATTSPC (BASE+530)    /* No space for asn attribs in char var */
  459. #define ERAS_BADRECF (BASE+531)    /* Bad assign record in assign env file */
  460. #define ERAS_BADRECE (BASE+532)    /* Bad assign/asgcmd record in penv    */
  461. #define ERAS_NULLVNAM (BASE+533) /* Environment variable name is null    */
  462. #define ERAS_PATCONF (BASE+534)    /* Matched >1 filename pattern        */
  463. #define ERAS_MTRUNC (BASE+535)    /* "-m on" not valid with "-T on"    */
  464. #define ERAS_FILENVPOS (BASE+536)    /* FILENV not set (non-UNICOS systems)*/
  465. #define ERAS_BADCLASS (BASE+537)    /* Bad -F class            */
  466. #define ERAS_BADOPT (BASE+538)        /* Bad option with valid -F class */
  467. #define ERAS_CONFLICT (BASE+539)    /* Conflicting options on -F    */
  468. #define ERAS_BADSYNT (BASE+540)    /* Bad syntax with -F            */
  469. #define ERAS_OPTREQ (BASE+541)    /* Option is required w. this -F class  */
  470. #define ERAS_PSTRING (BASE+542)    /* -F specification is too long        */
  471. #define ERAS_TOKUNI (BASE+543)    /* Invalid units with -F        */
  472. #define ERAS_BADMBS (BASE+544)    /* Bad mbs with -F             */
  473. #define ERAS_INMAX (BASE+545)    /* Bad initial maximum value combination*/
  474. #define ERAS_BADREC (BASE+546)    /* Bad record with -F            */
  475. #define ERAS_BADRFMT (BASE+547)    /* Bad record format            */
  476. #define ERAS_NUMREQ (BASE+548)    /* Numeric value required        */
  477. #define ERAS_TOOBIG (BASE+549)    /* A numeric option is too big         */
  478. #define ERAS_TOOSMALL (BASE+550)    /* A numeric option is too small*/
  479. #define ERAS_TOOLAY (BASE+551)    /* Too many layers specified        */
  480. #define ERAS_OPTVAL1 (BASE+552)    /* Invalid attribute option value    */
  481. #define ERAS_OPTVAL2 (BASE+553)    /* Invalid attribute option value - %s    */
  482. #define ERAS_UNOPT (BASE+554)    /* Unrecognized option            */
  483. #define ERAS_LRAW (BASE+555)    /* -l not valid with -o_raw or -o_ldraw */
  484.  
  485. #define WNAS_ANSUPY (BASE+580)    /* Option not supported on CX/1/CEA    */
  486. #define FE___583 (BASE+583)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  487. #define FE___584 (BASE+584)    /* DEAD MESSAGE (1.2) -- DO NOT RE-USE    */
  488. #define FE___585 (BASE+585)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  489. #define WNAS_DEPASDS (BASE+586)    /* Use of "-a SDS" is deprecated    */
  490. #define WNAS_UBMX (BASE+587)    /* "-u" requires tape device on CX/1/CEA*/
  491. #define FE___588 (BASE+588)    /* DEAD MESSAGE (3.0) -- DO NOT RE-USE    */
  492. #define WNAS_QNSTRD (BASE+589)    /* -q and -n :stride conflict; using -q */
  493. #define WNAS_NUMERIC (BASE+590)    /* Too many numerics specified        */
  494.  
  495. /*
  496.  * The range BASE+600 to BASE+650 is reserved for Format errors
  497.  * (see cray/format.h)
  498.  */
  499.  
  500. #define FEFMTBAS (BASE+611)    /* Base for all format errors        */
  501.  
  502. #define FEFMTELP (BASE+611)    /* Expecting left parenthesis        */
  503. #define FEFMTERP (BASE+612)    /* Expecting right parenthesis        */
  504. #define FEFMTEIN (BASE+613)    /* Expecting integer            */
  505. #define FEFMTEPE (BASE+614)    /* Expecting period            */
  506. #define FEFMTEPX (BASE+615)    /* Expecting P or X            */
  507. #define FEFMTIRP (BASE+616)    /* Invalid repetition count        */
  508. #define FEFMTZRP (BASE+617)    /* Zero repetition count        */
  509. #define FEFMTZFW (BASE+618)    /* Zero field width            */
  510. #define FEFMTFTL (BASE+619)    /* Field too large            */
  511. #define FEFMTZMH (BASE+620)    /* Zero or missing hollerith count    */
  512. #define FEFMTIED (BASE+621)    /* Invalid edit descriptor        */
  513. #define FEFMTNLS (BASE+622)    /* Nonterminated literal string        */
  514. #define FEFMTMEM (BASE+623)    /* Unable to allocate memory        */
  515.  
  516. /*
  517.  * The range BASE+691 to BASE+699 is reserved for PACK/UNPACK errors
  518.  */
  519.  
  520. #define FEPCKARG (BASE+691)    /* PACK/UNPACK called with too few args.*/
  521. #define FEPCKNEG (BASE+692)    /* PACK/UNPACK called with count < 0    */
  522. #define FEPCKPW2 (BASE+693)    /* PACK/UNPACK called with invalid NBITS*/
  523.  
  524.  
  525.  
  526. #define BMMVLCHK (BASE+800)    /* Bad VL in BMM simulation routines    */
  527.  
  528. /*
  529.  * The range BASE+850 to BASE+899 is for POSIX 1003.9 errors    
  530.  */
  531.  
  532. #define ENONAME    (BASE+850)    /* Invalid struct, const. or comp. name */
  533. #define ENOHANDLE (BASE+851)    /* Handle not created            */
  534. #define ETRUNC    (BASE+852)    /* Out character argument was truncated    */
  535. #define EARRAYLEN (BASE+853)    /* No. of array elements exceeds IALEN    */
  536. #define EEND    (BASE+854)    /* End of file, record or directory    */
  537. #define EBADHANDLE (BASE+855)     /* Invalid handle ID or type. Not part
  538.                    of standard                          */
  539. #define EBADID (BASE+856)       /* Invalid ID. Not part of standard.    */
  540.  
  541. /*
  542.  * The range BASE+900 to BASE+999 is for library warning (nonfatal) messages.
  543.  */
  544.  
  545. #define FWDEFBSZ (BASE+907)    /* DEFBUFSIZ environment var ignored    */
  546.  
  547. #define FWFUNKTP (BASE+931)    /* KIND type param conflict, CALL - f90 */
  548. #define FWFUNRNK (BASE+932)    /* Array RANK conflict for CALL   - f90 */
  549. #define FWFUNSIZ (BASE+933)    /* Array SIZE conflict for CALL   - f90 */
  550. #define FWFUNCHL (BASE+934)    /* Character Length conflict, CALL- f90 */
  551. #define FWFUNDVT (BASE+935)    /* Derived Types mismatch for CALL- f90 */
  552. #define FWFUNNPT (BASE+936)    /* PTR func but no PTR attr, CALL - f90 */
  553. #define FWFUNPTR (BASE+937)    /* PTR attr but no PTR func, CALL - f90 */
  554. #define FWARGOPT (BASE+938)    /* Nonoptional arg missing, CALL  - f90 */
  555. #define FWARGKTP (BASE+939)    /* KIND type conflict for argument- f90 */
  556. #define FWARGDVT (BASE+940)    /* Derived Type conflict for arg  - f90 */
  557. #define FWARGOUT (BASE+941)    /* INTENT IN/OUT conflict for arg - f90 */
  558. #define FWARGPTR (BASE+942)    /* Actual/Dummy ptr arg conflict  - f90 */
  559. #define FWARGRNK (BASE+943)    /* Actual/Dummy arg rank conflict - f90 */
  560. #define FWARGPCL (BASE+944)    /* Act/Dummy ptr/ass-shape charlen- f90 */
  561. #define FWARGASS (BASE+945)    /* Act/Dummy array type conflict  - f90 */
  562. #define FWARGSCA (BASE+946)    /* Act/Dummy array/scalar conflict- f90 */
  563. #define FWARGCHL (BASE+947)    /* Act/Dummy arg charlen conflict - f90 */
  564. #define FWARGARS (BASE+948)    /* Act/Dummy scalar/array conflict- f90 */
  565. #define FWARGSIZ (BASE+949)    /* Act/Dummy array extent conflict- f90 */
  566. #define FWBNDCHK (BASE+950)    /* Subscript value out of bounds...    */
  567. #define FWCONFCK (BASE+951)    /* Arrays are not conformant...        */
  568. #define FWNUMARG (BASE+952)    /* Number of arguments is not correct    */
  569. #define FWARGTYP (BASE+953)    /* Actual/dummy argument type conflict    */
  570. #define FWFUNTYP (BASE+954)    /* Actual/dummy argument type conflict    */
  571. #define FWARGSHP (BASE+955)    /* Actual/dummy argument shape conflict */
  572.  
  573. #define FWARGDIM (BASE+960)    /* array dimension nonconformant  - f90    */
  574. #define FWARGSBV (BASE+961)    /* Subscript value out of bounds  - f90    */
  575. #define FWARGSBR (BASE+962)    /* Subscript range out of bounds  - f90    */
  576. #define FWARGSTR (BASE+963)    /* Substring range out of bounds  - f90    */
  577. #define FWARGSVB (BASE+964)    /* Subscript val out of bounds, mipsf90    */
  578. #define FWARGDMD (BASE+965)    /* array dim nonconform,dim,ep, mipsf90    */
  579. #define FWARGDMZ (BASE+966)    /* array dim nonconform,ep,     mipsf90    */
  580. #define FWASOCPT (BASE+967)    /* unassociated pointer            */
  581. #define FWALOCAR (BASE+968)    /* unallocated allocatable array    */
  582. #define FWASASAR (BASE+969)    /* unassociated assumed shape array    */
  583.  
  584. #define CWPTRCHK (BASE+975)    /* Dereference of suspicious C pointer    */
  585. #define CWBNDCHK (BASE+976)    /* C subscript value out of bounds    */
  586.  
  587. /*
  588.  * Errors generated by the ffio package, range is 5000-5999.
  589.  */
  590.  
  591. #define FDC_ERRB    5000    /* FFIO Error number base */
  592. #define FDC_ERR_INTERR    5000    /* Deep weeds, internal error */
  593. #define FDC_ERR_CHAIN    5001    /* The chain of layers has some consistency */
  594.                 /* problem.  Issued from ffopen(). */
  595. #define FDC_ERR_NOSUP    5002    /* request not supported */
  596. #define FDC_ERR_NOBDRY    5003    /* format depends on lower level */
  597.                 /* record boundaries, which are not there */
  598. #define FDC_ERR_UBC    5004    /* bad UBC count */
  599. #define FDC_ERR_FMT    5005    /* error in FDC record format, usually */
  600.                 /* means that the file has been corrupted. */
  601. #define FDC_ERR_SCC    5006    /* bad SCC found in foreign file */
  602. #define FDC_ERR_MXREC    5007    /* maximum record size exceeded */
  603. #define FDC_ERR_MXBLK    5008    /* maximum block size exceeded */
  604. #define FDC_ERR_RAWR    5009    /* read after write error */
  605. #define FDC_ERR_NOMEM    5010    /* no memory! */
  606. #define FDC_ERR_REQ    5011    /* Bad request */
  607. #define FDC_ERR_PITM    5012    /* A read produced a partial item, when */
  608.                 /* numeric conversion was requested. */
  609. #define FDC_ERR_WPEOD    5013    /* Write past EOD */
  610. #define FDC_ERR_RPEOD    5014    /* Read past EOD */
  611. #define FDC_ERR_PADD    5015    /* remainder of record is not mult of rec */
  612. #define FDC_ERR_UXEND    5016    /* unexpected end, bad format */
  613. #define FDC_ERR_CDCBT    5017    /* bad cyber block terminator */
  614. #define FDC_ERR_CDCICW    5018    /* bad cyber I control word */
  615. #define FDC_ERR_CDCWCW    5019    /* bad cyber W control word */
  616.  
  617. #define FDC_ERR_WRARD    5021    /* Write after READ, not yet supported */
  618. #define FDC_ERR_DISABL    5022    /* Tried to use disabled layer */
  619. #define FDC_ERR_CCVRT    5023    /* Character conversion error */
  620. #define FDC_ERR_NCVRT    5024    /* Numeric conversion error */
  621. #define FDC_ERR_BADSPC    5025    /* Bad open spec, usually layer */
  622. #define FDC_ERR_BADBCW    5026    /* Bad BCW in COS layer */
  623. #define FDC_ERR_BADRCW    5027    /* Bad RCW in COS layer */
  624. #define FDC_ERR_WRDEV    5028    /* wrong device type for term layer */
  625. #define FDC_ERR_BADNVE    5029    /* bad NOS/VE V control word */
  626. #define FDC_ERR_FSSALO    5030    /* sds/mr allocation failed */
  627. #define FDC_ERR_SDSIO    5031    /* an ssread/sswrite failed */
  628. #define FDC_ERR_BADSK    5032    /* bad seek request */
  629. #define FDC_ERR_BADCOS    5033    /* corrupted/bad COS blocked file */
  630. #define FDC_ERR_FSSOVF    5034    /* FSS overflow not permitted */
  631. #define FDC_ERR_NWEOF    5035    /* cannot WEOF */
  632. #define FDC_ERR_BADPRI    5036    /* Bad PRI field in COS blocked file */
  633. #define FDC_ERR_BADPFI    5037    /* Bad PFI field in COS blocked file */
  634. #define FDC_ERR_NOPARM    5038    /* Not enough parameters in call */
  635. #define FDC_ERR_NOGPOS    5039    /* GETPOS not supported */
  636. #define FDC_ERR_NOSPOS    5040    /* SETPOS not supported */
  637. #define FDC_ERR_NOTREC    5041    /* Rqst must occur only on rec bdry */
  638. #define FDC_ERR_BADPTR    5042    /* fio pointer does not point to valid struct */
  639. #define FDC_ERR_NBUF0    5043    /* negative number of buffers requested */
  640. #define FDC_ERR_BUFSIZ    5044    /* buffer size is negative or too large */
  641. #define FDC_ERR_NOSTRM    5045    /* format depends on lower level layers(s) */
  642.                 /* being stream, which they are not */
  643. #define FDC_ERR_BADOVF    5046    /* FSS Overflow not permitted */
  644. #define FDC_ERR_SDSWB    5047    /* ssread/sswrite requires word boundary */
  645. #define FDC_ERR_OPNGRAN    5048    /* file size is not a multiple of granularity */
  646. #define FDC_ERR_GRAN    5049    /* layer data size granularity is violated */
  647. #define FDC_ERR_BCKDOOR 5050    /* layer below cache.ssd must support O_SSD */
  648. #define FDC_ERR_NOER90    5051    /* File is not an ER90 */
  649.  
  650. #define FDC_ERR_OAPPEND    5052    /* layer does not support O_APPEND open flag */
  651. #define FDC_ERR_OSSD    5053    /* layer does not support O_SSD flag */
  652. #define FDC_ERR_LSTIO    5054    /* listio subrequests not all for same file */
  653. #define FDC_ERR_NOSCR    5055    /* file cannot be opened as a scratch file */
  654. #define FDC_ERR_NOTAPE    5056    /* File is not a tape file.  It is ER90 */
  655. #define FDC_ERR_WRTERR    5057    /* Wrote too little data */
  656. #define FDC_ERR_RDERR    5058    /* Read too little data */
  657. #define FDC_ERR_SHCAC    5059    /* Cannot have stacked shared caches */
  658.  
  659. #define FDC_ERR_MTLSTIO    5060    /* Layer must be able to handle listio */
  660. #define FDC_ERR_MTLOCK     5061    /* Cannot lock */
  661. #define FDC_ERR_GLMFILE 5062    /* Different files attached on different PEs */
  662. #define FDC_ERR_BADSHC    5063    /* Bad stacked shared caches */
  663. #define FDC_ERR_NOSTCA    5064    /* stacked shared caches not allowed*/
  664. #define FDC_ERR_EOVDIS    5065    /* EOV processing is disabled */
  665. #define FDC_ERR_EOVALOW    5066    /* Operation not allowed during special eov */
  666.  
  667. /*
  668.  * Errors generated by the 'cmp' UserLayer will be in the range 5500-5599.
  669.  */
  670.  
  671. #define FDC_ERR_CMPLYR        5501    /* Can't alloc memory for cmp layer */
  672. #define FDC_ERR_SEGSIZ        5502    /* Segment size is not within range */ 
  673. #define FDC_ERR_CACHESZ        5503    /* Invalid data segment cache size  */
  674. #define FDC_ERR_DEBUGLVL    5504    /* Invalid Debug level */
  675. #define FDC_ERR_BADTRANS    5505    /* Invalid transformation type */
  676. #define FDC_ERR_INITHDR        5506    /* Unitialized header */
  677.  
  678. #define FDC_ERR_WRHDR        5507    /* Error writing header */
  679. #define FDC_ERR_CACHE        5508    /* Error allocating DataSegD cache */
  680. #define FDC_ERR_DSEGD        5509    /* Error writing DataSegD */
  681. #define FDC_ERR_DSEG        5510    /* Error writing data segment */
  682. #define FDC_ERR_DSEGBUF        5511    /* Error allocating cmpDSegBuffer */
  683. #define FDC_ERR_WRCACHE        5512    /* Error writing DSegD Cache */
  684. #define FDC_ERR_WRTRLR        5513    /* Error writing trailer */
  685.  
  686. #define FDC_ERR_RDHDR        5514    /* Unable to read file header */
  687. #define FDC_ERR_BADHDR        5515    /* Invalid file header */
  688. #define FDC_ERR_SEEKTRL        5516    /* Unable to seek to trailer */
  689. #define FDC_ERR_RDTRL        5517    /* Unable to read file trailer */
  690. #define FDC_ERR_SEEKCACHE    5518    /* Couldn't seek to cache location */
  691. #define FDC_ERR_RDCACHE        5519    /* Couldn't read segment cache */
  692. #define FDC_ERR_SEEKFDSEGD    5520    /* Couldn't seek to first data */
  693.                     /* segment descriptor in file  */
  694. #define FDC_ERR_BADCACHE    5521    /* Invalid segment descriptor cache */
  695. #define    FDC_ERR_NODSEGD        5522    /* No segment descriptors found */
  696. #define FDC_ERR_FILESZ        5523    /* Inconsistent file size */
  697. #define FDC_ERR_CMPBUF        5524    /* Couldn't alloc compressed buf */
  698. #define FDC_ERR_UNCMPBUF    5525    /* Couldn't alloc uncompressed buf */
  699. #define FDC_ERR_RDDSEG        5526    /* Couldn't read data segment */
  700. #define FDC_ERR_RDADSEG        5527    /* Couldn't read data segment */
  701. #define FDC_ERR_SEGLEN        5528    /* Bad data segment length */
  702. #define FDC_ERR_SEEKDSEG    5529    /* Couldn't seek to data segment */
  703. #define FDC_ERR_BADFLAGS    5530    /* Can't write to a file that was */
  704.                     /* not opened for writing */
  705. #define FDC_ERR_WRSEEK        5531    /* Can't seek when writing a */
  706.                     /* compressed file */
  707.  
  708. #define FDC_ERR_SEEKBEG        5532    /* Couldn't seek to beginning */
  709. #define FDC_ERR_SEEKEND        5533    /* Couldn't seek to last data seg */
  710. #define FDC_ERR_UPDHDR        5534    /* Error updating file header */
  711. #define FDC_ERR_BADAPPEND    5535    /* Error appending data */
  712. #define FDC_ERR_APPOPEN        5536    /* Can't open append file for read */
  713. #define FDC_ERR_APPCLOSE    5537    /* Can't close append file */
  714.  
  715. #define FDC_ERR_BADSEGBUF    5538    /* Bad uncompressed cached buffer */
  716. #define FDC_ERR_UNCMPSEGLIST    5539    /* Couldn't allocate uncompressed */
  717.                     /* segment buffer cache              */
  718. #define FDC_ERR_SEEKSET        5540    /* Pos for SEEK_SET is invalid      */
  719. #define FDC_ERR_TRACE_FILE    5541    /* Couldn't open trace file      */
  720.  
  721. /*
  722.  * Error codes for the Lempel-Ziv compression and decompression algorithms.
  723.  */
  724.  
  725. #define FDC_ERR_LZ_UNPACK    5542    /* Couldn't unpack compressed info */
  726. #define FDC_ERR_LZ_BADCHAR    5543    /* Unknown character encountered   */
  727. #define FDC_ERR_LZ_NOCOMP    5544    /* No compression achieved       */
  728. #define FDC_ERR_LZ_BUFALLOC    5545    /* Couldn't allocate buffer space  */
  729. #define FDC_ERR_LZ_WRITEMAX    5546    /* Couldn't write max bits       */
  730. #define FDC_ERR_LZ_BADHEADER    5547    /* Wrong magic header bits found   */
  731. #define FDC_ERR_LZ_BADMAXBITS    5548    /* Wrong max bits encountered       */
  732. #define FDC_ERR_LZ_BADINPUT    5549    /* Bad input during decompression  */
  733. #define FDC_ERR_LZ_WRITEHDR    5550    /* Error writing magic header       */
  734. #define FDC_ERR_LZ_UNCMPLEN    5551    /* Wrong uncompressed length       */
  735. #define FDC_ERR_LZ_BADCOMP    5552    /* Compression not working (DEBUG) */
  736.  
  737. #endif /* !_LIBERRNO_H */
  738.